split word by any whitespace#13
Conversation
|
|
\n으로는 자르면 안되는군요 |
|
맞습니다, 이전에 잘랐다가.. ㅎㅎ 다시 원복되었습니다 |
|
Skip count가 스페이스로는 초기화되지만 리턴으로는 초기화가 안될텐데 의도하신걸까 싶네요 |
|
아마 new line 의 경우 이후에 추가되어서 예외처리가 안되어 있는 것일 겁니다 (실제로 배포 직전에 급히 255번에 new line 을 추가했습니다 ㅠㅠ) 관련해서 테스트 코드를 작성해서 개선해보겠습니다 |
|
skip count 같은것을 잘 처리하려면 split() 을 안쓰는게 더 좋을 수도 있습니다. 지금 split된 정보가 필요한건 뒤에 두 단어를 더 내다보기 위한건데, 이걸 split해서 하지 말고 처리할 방법이 두가지 있습니다. 방법1: 입력 미리 내다보기 버퍼를 추가합니다. 단어를 미리 봐야할 상황이 되면 필요한 정보만 찾는 미리 내다보기 버퍼로 다음 단어 2개까지의 정보를 얻어와서 처리합니다. 말이 버퍼이지 지금은 단어 두개만 내다보면 되기 때문에, 다음 단어가 영어인지 아닌지만 보는 변수 두개와 어디까지 읽었는지 저장하는 커서 하나만 있어도 됩니다. 다음 단어가 필요해지면 미리보기 커서가 현재 커서보다 앞인지 뒤인지를 판정해서 새 정보를 가져오면 됩니다. 방법2: 출력 버퍼를 추가합니다. 잠재적으로 앞부분에 출력을 추가해야할 수 있는 (trible english) 경우가 보이면, 바로 result에 출력하는 대신 그 자리부터는 바로 출력하지 않고 내부의 출력 버퍼에 출력합니다. 더 변환을 진행하면서 앞부분에 출력을 추가해야하는 것으로 판정되면 추가출력을 출력하고 출력버퍼도 출력합니다. 앞부분에 출력을 추가하는게 불필요한 것으로 판정되면 그대로 출력버퍼만 출력합니다. |
|
현재를 유보하고 이후에 추가할 것인지, 미래를 내다보고 현재를 결정할 것인지의 차이인것 으로 이해했습니다 |
외에도\t나\n으로도 단어를 자릅니다